Static Vs Dynamic Libraries/Linking - Why Do We Use Shared Libraries